Methods, systems, and media for determining channel information

ABSTRACT

In accordance with some implementations of the disclosed subject matter, mechanisms for determining channel information are provided. In some implementations, a method for providing media guidance is provided, the method comprising: associating with a local area network; detecting at least one media device on the local area network; determining device information associated with the at least one media device on the local area network; determining, without user intervention, television provider information based on the device information; determining location information of the at least one media device; determining channel information based on the determined television provider information and the determined location information; and causing media guidance information to be presented that includes at least a portion of the determined channel information.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/482,439, filed Apr. 7, 2017, which is a continuation of U.S. patentapplication Ser. No. 15/043,120, filed Feb. 12, 2016, which is acontinuation of U.S. patent application Ser. No. 14/086,780, filed Nov.21, 2013, each of which is hereby incorporated by reference herein inits entirety.

TECHNICAL FIELD

The disclosed subject matter relates to methods, systems, and media fordetermining channel information.

BACKGROUND

There is an overwhelming volume of media content that is available tothe average consumer. More particularly, there are many applicationsthat a consumer can use on a television or set-top box that allow theconsumer to consume media content from various sources. For example, aconsumer can select between media content that is delivered linearlyfrom a multichannel video programming distributor, video-on-demandcontent that is provided by a multichannel video programmingdistributor, personal media content that is acquired by the consumer,recorded content that is stored on a digital video recorder or any othersuitable storage device, and/or on-demand content that is provided fromover-the-top providers.

As the number of sources continues to increase (e.g., additionalover-the-top providers of on-demand content), media guidance becomesincreasingly important. For example, the consumer can review programguide information, such as a grid guide of program listings organized bychannel, prior to making a decision on which media content to view.However, television channels that are available to the consumer andtheir channel number allocations can vary widely throughout the country.In order to receive such media guidance, the consumer is generallyrequired to manually input a zip code, a city, a state, and/or otherlocation information and then select a service provider for the inputtedlocation. This can be cumbersome for the user and can detract from theconsumer's experience in using a device to obtain media guidance.

Accordingly, mechanisms for determining channel information aredesirable.

SUMMARY

In accordance with various implementations of the disclosed subjectmatter, mechanisms for determining channel information are provided.

In some implementations, a method for providing media guidance isprovided, the method comprising: associating with a local area network;detecting at least one media device on the local area network;determining device information associated with the at least one mediadevice on the local area network; determining, without userintervention, television provider information based on the deviceinformation; determining location information of the at least one mediadevice; determining channel information based on the determinedtelevision provider information and the determined location information;and causing media guidance information to be presented that includes atleast a portion of the determined channel information.

In some implementations, a system for providing media guidance isprovided, the system comprising a hardware processor that is configuredto: associate with a local area network; detect at least one mediadevice on the local area network; determine device informationassociated with the at least one media device on the local area network;determine, without user intervention, television provider informationbased on the device information; determine location information of theat least one media device; determine channel information based on thedetermined television provider information and the determined locationinformation; and cause media guidance information to be presented thatincludes at least a portion of the determined channel information.

In some implementations, a non-transitory computer-readable mediumcontaining computer-executable instructions that, when executed by aprocessor, cause the processor to perform a method for providing mediaguidance is provided. The method comprising: associating with a localarea network; detecting at least one media device on the local areanetwork; determining device information associated with the at least onemedia device on the local area network; determining, without userintervention, television provider information based on the deviceinformation; determining location information of the at least one mediadevice; determining channel information based on the determinedtelevision provider information and the determined location information;and causing media guidance information to be presented that includes atleast a portion of the determined channel information.

In some implementations, a system for providing media guidance isprovided, the system comprising: means for associating with a local areanetwork; means for detecting at least one media device on the local areanetwork; means for determining device information associated with the atleast one media device on the local area network; means for determining,without user intervention, television provider information based on thedevice information; means for determining location information of the atleast one media device; means for determining channel information basedon the determined television provider information and the determinedlocation information; and means for causing media guidance informationto be presented that includes at least a portion of the determinedchannel information.

In some implementations, the system further comprises: means forperforming a search on the local area network for device information forthe at least one media device detected on the local area network; meansfor receiving the device information in response to the search from theat least one media device; means for transmitting a query that includesat least a portion of the received device information to a remote serverthat hosts a television provider database; and means for receiving thetelevision provider information in response to transmitting the query tothe remote server.

In some implementations, the determined channel information includes achannel lineup corresponding to the determined television providerinformation and the determined location information and the mediaguidance information includes an electronic program guide that includesa plurality of media content listings organized by a plurality ofallocated channel numbers that are derived from the channel lineup.

In some implementations, the media guidance information includes a mediacontent recommendation that includes a channel number from thedetermined channel information.

In some implementations, the system further comprises transmitting thedetermined channel information to the at least one media device on thelocal area network.

In some implementations, the system further comprises causing the mediaguidance information that includes at least a portion of the determinedchannel information to be presented on the at least one media device.

In some implementations, the system further comprises transmittingdevice configuration information to the at least one media device thatincludes at least a portion of the determined channel information.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects, features, and advantages of the disclosed subjectmatter can be more fully appreciated with reference to the followingdetailed description of the disclosed subject matter when considered inconnection with the following drawings, in which like reference numeralsidentify like elements.

FIG. 1 shows an illustrative example of a process for determiningchannel information and presenting media guidance information thatincludes the determined channel information in accordance with someimplementations of the disclosed subject matter.

FIG. 2 shows an illustrative example of a computing device that isproviding media guidance information that includes the determinedchannel information in the form of an electronic program guide inaccordance with some implementations of the disclosed subject matter.

FIG. 3 shows an illustrative example of a computing device that isproviding media guidance information that includes the determinedchannel information in the form of a content recommendation inaccordance with some implementations of the disclosed subject matter.

FIG. 4 shows a schematic diagram of an illustrative system suitable forimplementation of the mechanisms described herein for determiningchannel information and providing media guidance information inaccordance with some implementations of the disclosed subject matter.

FIG. 5 shows a detailed example of a server and one of the computingdevices of FIG. 4 that can be used in accordance with someimplementations of the disclosed subject matter.

DETAILED DESCRIPTION

In accordance with some implementations of the disclosed subject matter,mechanisms for determining channel information are provided. Moreparticularly, these mechanisms can determine television providerinformation and/or location information to determine channelinformation. Channel information can include, for example, a channellineup with allocated channel numbers and channel identifiers.

In some implementations, these mechanisms can determine televisionprovider information by detecting media devices that are connected to anetwork and, for the detected media devices, determine associated deviceinformation. For example, the mechanisms can detect that a particulardigital media server is connected to a local network associated with auser's home and determine a manufacturer name and a model numberassociated with that particular digital media server.

In a more particular example, a client application implementing themechanisms described herein can be loaded on a mobile device. Upondetecting that the mobile device has associated with a network, such asa user's wireless local network having multiple networked media devices,the mobile device can detect the media devices that are connected to thenetwork and, for the detected media devices, determine associated deviceinformation.

In another more particular example, a client application implementingthe mechanisms described herein can be loaded on a media device, such asa television device or a gaming device. Upon connecting the media deviceto the network, such as a user's local network during setup of the mediadevice, the media device can detect other media devices that areconnected to the network and, for the detected media devices, determineassociated device information.

In these examples, the mechanisms can use the manufacturer name, themodel number, and other suitable device information to determine aparticular television provider. Upon determining a particular televisionprovider and/or location information associated with one or more mediadevices, the mechanisms can present the user with media guidanceinformation that includes at least a portion of the determined channelinformation. For example, the mechanisms can present the user with anelectronic program guide application that includes media contentinformation organized by a channel lineup of channel numbers and channelidentifiers corresponding to the user's television provider. In anotherexample, the mechanisms can present the user with contentrecommendations that include channel numbers corresponding to the user'stelevision provider. In yet another example, the mechanisms can then beused configure one or more media device with television providerinformation, channel information, location information, etc.

These mechanisms described herein can be used in various applications.For example, these mechanisms can be used to determine, without userintervention, television provider information and location informationso that channel information can be determined. For mobile devices, thechannel information can be incorporated into mobile device applications,such as electronic program guide applications and recommendationapplications. For media devices, the channel information can beincorporated into media device applications. In addition, the channeldevices can be used to configure media devices, such as smart televisiondevices, user input interfaces, etc.

These and other features for determining channel information aredescribed herein in connection with FIGS. 1-5.

Turning to FIG. 1, an illustrative example 100 of a process forproviding media guidance information based on determined channelinformation is shown in accordance with some implementations of thedisclosed subject matter. At 110, a computing device can load a clientapplication that can determine channel information, where the channelinformation can be used to provide media guidance information.

It should be noted that the computing device can be any computing devicesuitable for providing media guidance information based on determinedchannel information, such as a cellular telephone, a smartphone, atablet computing device, a wearable computing device, a heads-updisplay, a laptop computer, a personal computer (PC), a smarttelevision, a gaming device, a gaming device, a set-top box, etc. Forexample, the client application can be loaded on a mobile device, wherethe mobile device determines channel information and/or presents mediaguidance information based on the channel information. In anotherexample, the client application can be loaded on a television device,where the television device determines channel information and/orpresents media guidance information based on the channel information. Inyet another example, the client application can be loaded on multipledevices, where a mobile device executing the client applicationdetermines the channel information and where a television deviceexecuting the client application presents media guidance information.

It should be noted that channel information can include, for example,channel identifiers, channel numbers, a channel lineup include one ormore channels, a channel lineup including all available channels, etc.For example, channel information can include a channel lineup withchannel number allocations corresponding to a particular televisionprovider. In another example, channel information can include aparticular channel number corresponding to a particular televisionprovider.

At 120, process 100 can detect an association or connection with a localnetwork (e.g., a local area network, a wireless local area network, awired/wireless local area network, or any other suitable local network).For example, in some implementations where the computing device is amobile device, the mobile device can connect with a wireless local areanetwork having multiple networked media devices. In a more particularexample, the client application executing on the mobile device candetect that the mobile device is associated with a particular localnetwork, such as a user's home network. In this example, the mobiledevice can indicate to the client application that the mobile device isconnected to a particular local network, such as a service setidentifier (SSID) that a user has designated as a wireless network inthe user's home. In some implementations, the mobile device candesignate a particular network as a home network based on number ofassociations (e.g., a local network that is most frequently associatedby the mobile device, a local network that includes particular mediadevices that is most frequently associated by the mobile device, etc.).

Additionally or alternatively, in implementations where the computingdevice is a television device or any other suitable media playbackdevice, the television device can be connected to a local network havingmultiple networked media devices. For example, the television device canbe connected via a wired connection to a networking device. In anotherexample, the television can be connected to a wireless network inresponse to providing network information, such as a service setidentifier and/or a password.

At 130, in response to detecting a connection with the local network,process 100 can detect media devices that are connected to the localnetwork. For example, in response to initiating the client applicationon a computing device, the computing device can detect whether one ormore set-top boxes, television devices, gaming devices, digital mediaserver (DMS) devices, digital media renderer (DMR) devices, digitalmedia players (DMP), and/or any other suitable media devices areconnected to the local network. In another example, in response toinitiating the client application on a computing device, the computingdevice can detect whether particular types of media devices, such asset-top boxes and television devices, are connected to the localnetwork.

In a more particular implementation, process 100 can initiate mediadevice discovery in response to receiving an instruction from thecomputing device executing process 100 to initiate device discovery onthe network to which the computing device is connected. When thecomputing device is a mobile device, process 100 can be initiated by themobile device at any suitable time and for any suitable reason orreasons. For example, the client application running on the mobiledevice can initiate process 100 to determine whether the mobile deviceis one the same network as a digital media device, such as a digitalmedia server or a digital media renderer.

In some implementations, process 100 can check a cache of previouslydiscovered media devices associated with the current network. Forexample, each time process 100 is executed by the client application fora particular network, process 100 can store information relating tomedia devices discovered on that particular network in a cache.

At 140, upon detecting that presence of media devices on the network,process 100 can determine device information associated with each of thedetected media devices. For example, process 100 can determine devicedetails, such as a device identification number (e.g., a UniversalUnique Identifier (UUID)), an address of the device on the network, alocation where additional device details can be found, a manufacturername of the device, a text string including a name of the device, a textstring include a model number of the device, a text string include adescription of the device, or any other suitable device information.

In a more particular implementation, process 100 can execute a fulldiscovery protocol on the network for determining the details of anymedia devices found on the current network. The full discovery protocolcan include transmitting a multicast message to all devices on thenetwork requesting device details from the devices on the network.Additionally, the multicast message can be addressed to certain types ofdevices and/or can be compatible with a discovery protocol for devicesthat comply with a particular standard (e.g., Universal Plug and Play(UPnP), Digital Living Network Alliance (DLNA), etc.). In someimplementations, process 100 can wait a predetermined amount of time forresponses to the multicast message, which can be in the form of aunicast message addressed to the computing device executing process 100.Such a unicast message can include one or more device details or deviceinformation.

Additionally, in some implementations, the full discovery protocol caninclude requesting additional device details from media devices thatresponded by sending a unicast message to an address and/or locationincluded in a reply by the device to the multicast message. Suchadditional details can include a name of the device (e.g., a text nameof the device if a name has been assigned to the device), a manufacturerof the device, a model name of the device, a model number of the device,a model description of the device, a serial number of the device, and/orany other suitable device information associated with the device.

In some implementations, a device type or device category (e.g.,television, game console, set-top box, etc.) and/or description of themedia device's capabilities can be included in the response to themessage sent by process 100 using the computing device executing process100. Alternatively, the device type and/or the description of thedevice's capabilities may not be included in any reply.

In another more particular implementation, the full discovery protocolcan cause the computing device executing process 100 to send a UserDatagram Protocol (UDP) multicast message on the current network. Insome implementations, the UDP can include an M-Search message directedto media devices, such as digital media renderers and/or digital mediaservers (e.g., as defined in DLNA Guidelines, December 2011, Part 1:Architecture and Protocols” technical specification, which is herebyincorporated by reference herein in its entirety), digital mediaplayers, or any other suitable media device that outputs, processes,and/or presents media content. In some implementations, the UDPmulticast message can include an address of the device sending themessage (e.g., the network address of the computing device executingprocess 100), and can include a time period during which replies are tobe sent. Such a time period can be any suitable time period, such as onesecond, two seconds, etc., and can be set based on any suitable factors.An example of simple device discovery protocol (SSDP) is described in“UPnP™ Device Architecture 1.1” technical specification as revised Oct.15, 2008, which is hereby incorporated by reference herein in itsentirety. In some implementations, SSDP as used herein can be a modifiedform of SSDP and may add elements and/or omit elements as compared toSSDP as described in “UPnP™ Device Architecture 1.1”.

In response to receiving UDP unicast replies from media devices on thenetwork, process 100 can extract device details associated with aparticular media device included in the UDP unicast reply. For example,a UUID for the replying media device and a uniform resource locator(URL) at which additional device details or device information can befound can be extracted from the UDP unicast reply. Such a URL canspecify a suitable address at which the additional device informationcan be found, such as an address of the responding media device, anaddress of a remote server, or any other suitable location. In a moreparticular example, a Device Description file of the responding devicecan be located at the URL and can include additional device information,such as a name of the device, an identification of the manufacturer ofthe device, a model name of the device, a model number of the device, adevice type of the device, and/or any other suitable device details. Itshould be noted that the Device Description file can be in any suitableformat, such as Extensible Markup Language (XML), HyperText MarkupLanguage (HTML), as a text file, or using any other suitable format.

In some implementations, the Device Description file can include variousfields that identify a particular type of information as correspondingto particular device details. For example, the Device Description filecan include the following fields: <manufacturer>, which can include aname of the manufacturer of the device; <model_name>, which can includea manufacturer assigned model name of the device; <model_number>, whichcan include a manufacturer assigned model number, <model_description>,which can include a longer description of the device (e.g., less than128 characters); <X_device_category>, which can indicate a device typeif present; and/or any other suitable fields. In some implementations,such fields can be formatted using any suitable formatting. For example,these fields can be formatted to comply with the UPnP standard describedabove.

It should be noted that, although the implementations described hereinmention the use of the SSDP protocol for device discovery, this ismerely illustrative. Any other suitable device discovery protocol can beused to detect the presence of media devices, such as the multicastDomain Name System (mDNS) and DNS-based Service Discovery (multicastDNS/DNS-SD) protocol and the DIscovery And Launch (DIAL) protocol. Forexample, the DIAL service discovery protocol is based on the SSDPprotocol and can discover devices on a local area network, such astelevision devices, and can launch an application on the televisiondevice to display content.

Referring back to FIG. 1, at 150, process 100 can determine televisionprovider information based on the device information, such as aparticular cable television provider, a particular satellite televisionprovider, a particular telecommunication television provider, aparticular streaming media provider, and/or any other suitable mediaprovider. For example, process 100 can transmit a query to a deviceidentification database for a television provider associated with thedetected media device. Such a query can include any suitable devicedetails or device information to determine a television providerassociated with the media device. For example, process 100 can generatethe query to include information about the manufacturer of the device, amodel name of the device, a model description of the device, and a modelnumber of the device. In this example, the query can be transmitted to adatabase that includes set-top box device information used by particularcable and satellite television providers. In response, the database canreturn a response that indicates the service provider associated withthe detected media device.

Additionally or alternatively, process 100 can transmit a query to asearch system for a television provider associated with the detectedmedia device. For example, the response received from the database canindicate that the television provider of the responding device isunknown and/or cannot be determined by the database. In response,process 100 can transmit any suitable device details and/or deviceinformation for input into the search system. The search system can, forexample, input device details and/or device information as keywords anddetermine, from the search results, a television provider associatedwith the detected media device.

In some implementations, the search system can determine whether a matchis found. If no matching television provider is found, process 100 canwait to receive additional device details or device information.Additionally or alternatively, process 100 can transmit a message to theclient application requesting that the user restart the clientapplication, transmit other device information, and/or input or verifyparticular information.

In some implementations, process 100 can determine location informationassociated with the detected media device at 160. As described above,location information can be included in device details obtained from thedetected media device. In another example, location information can bedetermined from the computing device. When the computing device is amobile device, process 100 can determine location information from auser profile, user preferences, search history, etc. For example,process 100 can determine from a user account associated with the mobiledevice includes a location that the user has designated as a homelocation. In another example, process 100 can determine from emailinformation and/or search history information (e.g., associated with auser account on the mobile device) an approximate location of the mediadevice. In some implementations, the location information determinedfrom the mobile device can include coordinates such as coordinatesderived using the Global Positioning System (GPS), and/or approximatecoordinates such as coordinates derived using multilateration techniques(e.g., triangulation of radio signals from a known radio source, such asa wireless base station), or the like.

In situations in which the mechanisms described herein collect personalinformation about users, or can make use of personal information, theusers can be provided with an opportunity to control whether programs orfeatures collect user information (e.g., information about cached devicedetails on a user's media device, devices discovered on networks towhich the user device is connected, an address from which a databasequery is sent, a user's preferences, or a user's current location), orto control whether and/or how to receive content from the server thatcan be more relevant to the user. In addition, certain data can betreated in one or more ways before it is stored or used, so thatpersonally identifiable information is removed. For example, a user'sidentity can be treated so that no personally identifiable informationcan be determined for the user, or a user's geographic location can begeneralized where location information is obtained (such as to a city,ZIP code, or state level), so that a particular location of a usercannot be determined. Thus, the user can have control over howinformation is collected about the user and used by a content server.

Referring back to FIG. 1, in some implementations, process 100 candetermine channel information based on the television providerinformation and the location information at 170. For example, process100 can determine channel information, such as a television channellineup, a network-to-channel mapping or a source-to-channel mapping, ora particular channel number for a television network, by transmitting aquery to a database of media information, such as a Tribune MediaServices (TMS) database, that includes the television providerinformation and the location information. In response, the mediadatabase can transmit a response that includes channel information foruse by the client application executing on the computing device.

It should be noted that the channel information can be stored in anysuitable storage device. For example, the channel information can bestored on the mobile device executing process 100. In another example,the mobile device executing process 100 can transmit the channelinformation to a connected media device, such as a connected televisiondevice on the local network, for storage.

At 180, process 100 can present media guidance information to the userthat includes at least a portion of the determined channel information.For example, the mobile device executing process 100 can present anelectronic program guide on the display of the mobile device thatincludes the channel information corresponding to the determinedtelevision provider along with media content information (e.g., the usercan watch television show A at 5:00 PM on channel 502 with the channelcall sign XYZ). In another example, the mobile device executing process100 can transmit the channel information for use by another applicationor another device, such as an electronic program guide applicationinstalled on the mobile device or an electronic program guideapplication installed on a connected television device. In yet anotherexample, media guidance information can include content recommendationsthat include channel numbers or any other suitable channel informationcorresponding to the determined television provider (e.g., arecommendation window indicating that the user may like television showB at 7:30 PM on channel 504 with the channel call sign ZYX). In afurther example, media guidance information can include device setupinformation, where channel information and/or television providerinformation can be transmitted to a connected television device or othersuitable media device for configuring the device (e.g., program guideinformation, remote control information, channel lineup information,etc.).

It should be noted that the above steps of the flow diagram of FIG. 1can be executed or performed in any order or sequence not limited to theorder and sequence shown and described in the figure. Also, some of theabove steps of the flow diagram of FIG. 1 can be executed or performedsubstantially simultaneously where appropriate or in parallel to reducelatency and processing times. Furthermore, it should be noted that FIG.1 is provided as examples only. At least some of the steps shown inthese figures may be performed in a different order than represented,performed concurrently, or altogether omitted.

Illustrative examples of media guidance information that can bepresented on a computing device that includes the determined channelinformation are shown in FIGS. 2 and 3.

FIG. 2 shows an illustrative example of a mobile device displaying anelectronic program guide in accordance with some implementations of thedisclosed subject matter. Although any suitable device (e.g., asdescribed below in connection with FIG. 4) can present media guidanceinformation to the user that includes channel information, the followingexamples are described in connection with a mobile device, such as asmartphone, a tablet computing device, a wearable computing device, etc.

As shown in FIG. 2, in response to determining channel information,mobile device 210 can present electronic program guide 220 on thedisplay of mobile device 210. Electronic program guide 220 can provide aprogram listings grid that includes channel information, such as channelnumbers and channel identifiers assigned or allocated by the televisionprovider, and includes content listings. Alternatively, electronicprogram guide 220 can provide media content listings to be presented ina list of search results responsive to a search query inputted by theuser, where the media content listings include the channel numbersand/or any other suitable channel information corresponding to thetelevision provider.

As described herein, the computing device, such as a second screendevice, can be connected to a television device or a media device thatis causing media content to be presented on the television device, suchas a set-top box or a digital media receiver. In this implementation,the computing device can transmit the channel information to theconnected media device, where the connected media device can cause anelectronic program guide or any other suitable guidance information thatincludes the channel information associated with the television providerto be presented.

It should also be noted that, in some implementations, the channelinformation, such as a network-to-channel number mapping, can be used toupdate default channel information associated with an application, suchas a program guide application or a recommendation application.

FIG. 3 shows an illustrative example of a mobile device displaying acontent recommendation in accordance with some implementations of thedisclosed subject matter. For example, the client application executingon the mobile device 310 can determine the channel information based onthe television provider and/or the location information and can includethe channel information in one or more media content recommendations 320provided to the user. As shown in FIG. 3, media content recommendation320 includes the determined channel information within therecommendation itself. For example, media content recommendation 320 canbe a recommendation window or indicator that prompts the user of thecomputing device to tune to a particular channel in order to watch aparticular television program.

As also shown in FIG. 3, options 330-360 that are provided to the usercan also incorporate the determined channel information. For example,option 330 can transmit an instruction to a connected television deviceto tune to a particular channel in order to watch the particulartelevision program recommended in recommendation indicator 320. Inanother example, option 340 can direct mobile device 310 to initiate aparticular media application installed on mobile device 310 thatcorresponds to the particular channel so that the user can watch theparticular television program recommended in recommendation indicator320 (e.g., launch an application corresponding to the channel, launch amedia playback application that has a page corresponding to the channel,etc.). In yet another example, options 350 and 360 can instruct one ormore media devices to remind or record the particular television programrecommended in recommendation indicator 320 by tuning to the appropriatechannel corresponding to the determined television provider.

It should be noted that, in some implementations, media guidanceinformation, such as program guide listings and content recommendations,can be provided by any suitable application or any suitable source. Thechannel information that is determined based on television providerinformation and/or location information can be used to modify the mediaguidance information that is provided to the user. For example, withoutreceiving any input from the user, channel information associated withthe user's television service provider can be included in one or moreapplications on the mobile device and/or one or more applications onmedia devices connected to the mobile device on a local network.

FIG. 4 shows a generalized schematic diagram of a system 400 on whichprocess 100 for determining channel information and presenting mediaguidance information with the channel information can be implemented inaccordance with some implementations of the disclosed subject matter. Asillustrated, system 400 can include one or more computing devices 402,such as a digital media device, a mobile device, a tablet computingdevice, a wearable computing device, and/or any suitable device fordetermining channel information and presenting media guidanceinformation with the channel information. For example, system 400 caninclude multiple computing devices that are connected on a localnetwork, such as a mobile device (e.g., a cellular telephone, asmartphone, a tablet computing device, a wearable computing device, aheads-up display, a laptop computer, etc.) and a media device (e.g., aset-top box, a television device, a smart television device, a gamingdevice, a digital media server device, a digital media renderer device,a digital media player device, etc.).

In some implementations, computing device 402 can include a storagedevice, such as a hard drive, a digital video recorder, a solid statestorage device, a gaming console, a removable storage device, or anyother suitable device for storing channel information, guidanceinformation, device details, location information, etc.

In some implementations, computing device 402 can include a secondscreen device. For example, the second screen device can determinechannel information and transmit the channel information to a connectedmedia device, where the media device incorporates the channelinformation into media guidance information that is presented to theuser.

Computing devices 402 can be local to each other or remote from eachother. For example, when one computing device 402 is a television deviceand another computing device 402 is a second screen device (e.g., atablet computing device, a mobile telephone, etc.), the computingdevices 402 may be located in the same room and may be connected to thesame local network. Computing devices 402 are connected by one or morecommunications links 404 to a communications network 406 that is linkedvia a communications link 408 to a server 410.

System 400 can include one or more servers 412. Server 412 can be anysuitable server for providing access to the mechanisms described herein,such as a processor, a computer, a data processing device, or acombination of such devices. For example, the client application can bedistributed into multiple backend components and multiple frontendcomponents or interfaces. In a more particular example, backendcomponents, such as data distribution can be performed on one or moreservers 412. Similarly, the graphical user interfaces displayed by theclient application, such as the graphical user interface for displayingmedia guidance information, can be distributed by one or more servers412 to media playback device 402 or mobile device 402 via communicationlink 402.

More particularly, for example, each of the computing devices 402 andserver 410 can be any of a general purpose device such as a computer ora special purpose device such as a client, a server, etc. Any of thesegeneral or special purpose devices can include any suitable componentssuch as a processor (which can be a microprocessor, digital signalprocessor, a controller, etc.), memory, communication interfaces,display controllers, input devices, etc. For example, computing device402 can be implemented as a personal computer, a tablet computingdevice, a personal digital assistant (PDA), a portable email device, amultimedia terminal, a mobile telephone, a gaming device, a set-top box,a television, etc.

Referring back to FIG. 4, communications network 406 may be any suitablecomputer network including the Internet, an intranet, a wide-areanetwork (“WAN”), a local-area network (“LAN”), a wireless network, adigital subscriber line (“DSL”) network, a frame relay network, anasynchronous transfer mode (“ATM”) network, a virtual private network(“VPN”), or any combination of any of such networks. For example, amobile device 402 and a media device 402 can be connected to a localnetwork 406. Communications links 404 and 408 may be any communicationslinks suitable for communicating data between computing devices 402 andserver 410, such as network links, dial-up links, wireless links,hard-wired links, any other suitable communications links, or acombination of such links. Computing devices 402 enable a user to accessfeatures of the application. Computing devices 402 and server 410 may belocated at any suitable location. In one implementation, computingdevices 402 and server 410 may be located within an organization.Alternatively, computing devices 402 and server 410 may be distributedbetween multiple organizations.

FIG. 5 shows and example 500 of hardware that can be used to implementserver 410 and mobile device 402 depicted in FIG. 4 in accordance withsome implementations. Referring back to FIG. 4, the server and one ofthe computing devices depicted in FIG. 4 are illustrated in more detailin FIG. 5. Referring to FIG. 5, computing device 402 may includeprocessor 512, display 514, input device 516, and memory 518, which maybe interconnected. In a preferred implementation, memory 518 contains astorage device for storing a computer program for controlling processor512.

Processor 512 can use the computer program to present on display 514 theclient application, the media guidance information including the channelinformation associated with the television provider, and any othersuitable data received through communications link 402 and commands andvalues transmitted by a user of computing device 402. It should be notedthat data received through communications link 404 or any othercommunications links can be received from any suitable source. Inputdevice 516 can include a computer keyboard, a mouse, a trackball, akeypad, a remote control, any other suitable input device, or anysuitable combination thereof. Additionally or alternatively, inputdevice 516 can include a touch screen display 514 that can receive input(e.g. using a finger, a stylus, or the like). For example, a contentrecommendation and one or more user actions can be displayed on thetouch screen of the mobile device and the client application executingon the mobile device can respond to contact with the touch screen, suchas one or more taps on the touch screen, maintaining continuous contactwith the touch screen, movement of the point of contact whilemaintaining continuous contact, a breaking of the contact, or anycombination thereof.

Server 410 can include a processor 522, a display 524, an input device526, and a memory 528, which can be interconnected. In someimplementations, memory 528 can contain a storage device for storingdata received through communications link 408 or through other links. Insome implementations, memory 528 can further contain a storage devicefor storing a server program for controlling processor 522.

Processor 522 can use the computer program to present on display 524 auser input interface and/or the data received through communicationslink 408, and receive commands and values transmitted by computingdevice 402 (e.g., a mobile device and/or media device). It should benoted that data received through communications link 408 or any othercommunications links can be received from any suitable source. Inputdevice 526 can include a computer keyboard, a mouse, a trackball, akeypad, a remote control, any other suitable input device, or anysuitable combination thereof.

In some implementations, the client application can include anapplication program interface (not shown), and/or can be resident inmemory 518 of computing device 402 and/or memory 528 of server 410.Additionally or alternatively, a graphical user interface (“GUI”) can bedistributed to computing device 402, which can allow a user to interactwith the client application resident at, for example, server 410.

In some implementations, the client application can include client-sidesoftware, hardware, or both. For example, the client application canencompass one or more Web-pages or Web-page portions (e.g., via anysuitable encoding, such as HyperText Markup Language (“HTML”), DynamicHyperText Markup Language (“DHTML”), Extensible Markup Language (“XML”),JavaServer Pages (“JSP”), Active Server Pages (“ASP”), Cold Fusion, orany other suitable approaches). As another example, the clientapplication can encompass a computer program that causes a processor toexecute the client application. In one particular implementation, theone or more applications can include client-side software, server-sidesoftware, hardware, firmware, or any suitable combination thereof. Forexample, the application(s) can encompass a computer program written ina programming language recognizable by media playback device 502, mobiledevice 504, and/or server 512 that is executing the application(s)(e.g., a program written in a programming language, such as, Java, C,Objective-C, C++, C#, Javascript, Visual Basic, HTML, XML, ColdFusion,any other suitable approaches, or any suitable combination thereof).

Although the user input interface application is described herein asbeing implemented on a computing device and/or server, this is onlyillustrative. The client application can be implemented on any suitableplatform (e.g., a personal computer (“PC”), a mainframe computer, a dumbterminal, a data display, a two-way pager, a wireless terminal, aportable telephone, a portable computer, a palmtop computer, an H/PC, anautomobile PC, a laptop computer, a cellular phone, a personal digitalassistant (“PDA”), a combined cellular phone and PDA, etc.) to providesuch features.

In some implementations, any suitable computer readable media can beused for storing instructions for performing the functions and/orprocesses described herein. For example, in some implementations,computer readable media can be transitory or non-transitory. Forexample, non-transitory computer readable media can include media suchas magnetic media (such as hard disks, floppy disks, etc.), opticalmedia (such as compact discs, digital video discs, Blu-ray discs, etc.),semiconductor media (such as flash memory, electrically programmableread only memory (EPROM), electrically erasable programmable read onlymemory (EEPROM), etc.), any suitable media that is not fleeting ordevoid of any semblance of permanence during transmission, and/or anysuitable tangible media. As another example, transitory computerreadable media can include signals on networks, in wires, conductors,optical fibers, circuits, any suitable media that is fleeting and devoidof any semblance of permanence during transmission, and/or any suitableintangible media.

Accordingly, methods, systems, and media for determining channelinformation are provided.

Although the invention has been described and illustrated in theforegoing illustrative implementations, it is understood that thepresent disclosure has been made only by way of example, and thatnumerous changes in the details of implementation of the invention canbe made without departing from the spirit and scope of the invention,which is limited only by the claims that follow. Features of thedisclosed implementations can be combined and rearranged in variousways.

What is claimed is:
 1. A system for providing media guidance, the systemcomprising: a media device including a hardware processor that isconfigured to: associate with a network; transmit a request to aplurality of media playback devices connected to the network for deviceinformation; receive one or more responses that include the deviceinformation for one or more of the plurality of media playback devicesconnected to the network, wherein the device information for a mediaplayback device includes location information associated with the mediaplayback device; determine media guidance information based on thelocation information associated with each of the one or more of theplurality of media playback devices that responded to the request; andcause the media guidance information to be presented on a media playbackdevice selected from the plurality of media playback device.
 2. Thesystem of claim 1, wherein the hardware processor is further configuredto determine whether the network corresponds to a home local areanetwork and wherein the plurality of media playback devices and themedia device are connected to the home local area network.
 3. The systemof claim 1, wherein the device information includes deviceidentification information for one or more of the plurality of mediaplayback devices connected to the network and wherein the deviceidentification information includes device type information and modelinformation associated with each of the plurality of media playbackdevices.
 4. The system of claim 1, wherein the hardware processor isfurther configured to: transmit a query that includes at least a portionof the received device information to a remote server that hosts aservice provider database that includes service provider information;and receive the service provider information responsive to the query. 5.The system of claim 4, wherein the media guidance information includes achannel lineup corresponding to the determined service providerinformation and the determined location information and wherein anelectronic program guide that includes a plurality of media contentlistings organized by a plurality of allocated channel numbers that arederived from the channel lineup.
 6. The system of claim 4, wherein themedia guidance information includes a media content recommendation thatincludes a channel number from the determined channel information. 7.The system of claim 1, wherein the hardware processor is furtherconfigured to transmit device configuration information to the one ormore media devices that includes at least a portion of the determinedmedia guidance information.
 8. The system of claim 1, wherein thehardware processor is further configured to determine, without userintervention, an approximate location of the media device based on thelocation information associated with each of the one or more of theplurality of media playback devices that responded to the request.
 9. Amethod for providing media guidance, the method comprising: associatingwith a network; transmitting a request to a plurality of media playbackdevices connected to the network for device information; receiving oneor more responses that include the device information for one or more ofthe plurality of media playback devices connected to the network,wherein the device information for a media playback device includeslocation information associated with the media playback device;determining media guidance information based on the location informationassociated with each of the one or more of the plurality of mediaplayback devices that responded to the request; and causing the mediaguidance information to be presented on a media playback device selectedfrom the plurality of media playback device.
 10. The method of claim 9,further comprising determining whether the network corresponds to a homelocal area network and wherein the plurality of media playback devicesand the media device are connected to the home local area network. 11.The method of claim 9, wherein the device information includes deviceidentification information for one or more of the plurality of mediaplayback devices connected to the network and wherein the deviceidentification information includes device type information and modelinformation associated with each of the plurality of media playbackdevices.
 12. The method of claim 9, further comprising: transmitting aquery that includes at least a portion of the received deviceinformation to a remote server that hosts a service provider databasethat includes service provider information; and receiving the serviceprovider information responsive to the query.
 13. The method of claim12, wherein the media guidance information includes a channel lineupcorresponding to the determined service provider information and thedetermined location information and wherein an electronic program guidethat includes a plurality of media content listings organized by aplurality of allocated channel numbers that are derived from the channellineup.
 14. The method of claim 12, wherein the media guidanceinformation includes a media content recommendation that includes achannel number from the determined channel information.
 15. The methodof claim 9, further comprising transmitting device configurationinformation to the one or more media devices that includes at least aportion of the determined media guidance information.
 16. The method ofclaim 9, further comprising determining, without user intervention, anapproximate location of the media device based on the locationinformation associated with each of the one or more of the plurality ofmedia playback devices that responded to the request.
 17. Anon-transitory computer-readable medium containing computer-executableinstructions that, when executed by a processor, cause the processor toperform a method for providing media guidance, the method comprising:associating with a network; transmitting a request to a plurality ofmedia playback devices connected to the network for device information;receiving one or more responses that include the device information forone or more of the plurality of media playback devices connected to thenetwork, wherein the device information for a media playback deviceincludes location information associated with the media playback device;determining media guidance information based on the location informationassociated with each of the one or more of the plurality of mediaplayback devices that responded to the request; and causing the mediaguidance information to be presented on a media playback device selectedfrom the plurality of media playback device.
 18. The non-transitorycomputer-readable medium of claim 17, wherein the method furthercomprises determining whether the network corresponds to a home localarea network and wherein the plurality of media playback devices and themedia device are connected to the home local area network.
 19. Thenon-transitory computer-readable medium of claim 17, wherein the deviceinformation includes device identification information for one or moreof the plurality of media playback devices connected to the network andwherein the device identification information includes device typeinformation and model information associated with each of the pluralityof media playback devices.
 20. The non-transitory computer-readablemedium of claim 17, wherein the method further comprises: transmitting aquery that includes at least a portion of the received deviceinformation to a remote server that hosts a service provider databasethat includes service provider information; and receiving the serviceprovider information responsive to the query.
 21. The non-transitorycomputer-readable medium of claim 20, wherein the media guidanceinformation includes a channel lineup corresponding to the determinedservice provider information and the determined location information andwherein an electronic program guide that includes a plurality of mediacontent listings organized by a plurality of allocated channel numbersthat are derived from the channel lineup.
 22. The non-transitorycomputer-readable medium of claim 20, wherein the media guidanceinformation includes a media content recommendation that includes achannel number from the determined channel information.
 23. Thenon-transitory computer-readable medium of claim 17, wherein the methodfurther comprises transmitting device configuration information to theone or more media devices that includes at least a portion of thedetermined media guidance information.
 24. The non-transitorycomputer-readable medium of claim 17, wherein the method furthercomprises determining, without user intervention, an approximatelocation of the media device based on the location informationassociated with each of the one or more of the plurality of mediaplayback devices that responded to the request.